/**
 * 
 */
package org.rollinitiative.d20.entity;

import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
import javax.xml.bind.annotation.XmlType;

/**
 * A Player is an actor that is controlled or directed by a human player.
 * 
 * @author bebopjmm
 */
@XmlRootElement(name = "Player", namespace = "java:org.rollinitiative.d20.entity")
@XmlType(name = "PlayerType", namespace = "java:org.rollinitiative.d20.entity")
public class Player extends Actor
{

   String playerName;

   int xp = 0;

   String classID_;

   String classDescript_;


   public Player()
   {
      super();
      this.playerName = "NOT-SET";
   }
   
   public Player(String playerName)
   {
      super();
      this.playerName = playerName;
   }


   public Player(String playerName, String characterName)
   {
      super(characterName);
      this.playerName = playerName;
      this.hp.setHasReserve(true);
   }


   /**
    * @return the playerName_
    */
   public String getPlayerName()
   {
      return playerName;
   }


   /**
    * @param playerName the playerName_ to set
    */
   @XmlAttribute(required = true)
   public void setPlayerName(String playerName)
   {
      this.playerName = playerName;
   }


   /**
    * @return the xp_
    */
   public int getXp()
   {
      return xp;
   }


   /**
    * @param xp the xp_ to set
    */
   public void setXp(int xp)
   {
      this.xp = xp;
   }


   /**
    * @return the classID_
    */
   public String getClassID()
   {
      return classID_;
   }


   /**
    * @param classID the classID_ to set
    */
   @XmlTransient
   public void setClassID(String classID)
   {
      this.classID_ = classID;
   }


   /**
    * @return the classDescript_
    */
   public String getClassDescript()
   {
      return classDescript_;
   }


   /**
    * @param classDescript_ the classDescript_ to set
    */
   @XmlTransient
   public void setClassDescript(String classDescript)
   {
      this.classDescript_ = classDescript;
   }

}
